
// #include "VariableResidual.h"

// #include "NonlinearSystem.h"
// #include "FEProblem.h"
// #include "SubProblem.h"

// template<>
// InputParameters validParams<VariableResidual>()
// {
//   InputParameters params = validParams<GeneralPostprocessor>();
//   params.addParam<VariableName> ("variable", "which variable watched");
//   params.set<MultiMooseEnum>("execute_on") = "nonlinear";
//   return params;
// }

// VariableResidual::VariableResidual(const InputParameters &parameters) :
//     GeneralPostprocessor(parameters)
// {}

// Real VariableResidual::getValue()
// {
// 	TransientNonlinearImplicitSystem & _sys = _fe_problem.getNonlinearSystem().sys();
// 	if(isParamValid("variable"))
// 	{
// 		VariableName var_name = getParam<VariableName>("variable");
// 		unsigned int var_num = _fe_problem.getVariable(0, var_name).number();
// 		return _sys.calculate_norm(*_sys.rhs, var_num, DISCRETE_L2);
// 	}
//   return _sys.rhs->l2_norm();
// }

